﻿#pragma once
#pragma execution_character_set("utf-8")
// 本文件为utf-8 编码格式

#ifndef __GD__ImageFilterViewController__
#define __GD__ImageFilterViewController__

#include "CrossApp.h"


class ImageFilterViewController :
	public CAViewController
{

public:

	ImageFilterViewController();

	virtual ~ImageFilterViewController();

public:
	void onSelectImageBtnClick(CrossApp::CAControl *control, CrossApp::CCPoint point);
	void onCommitBtnClick(CrossApp::CAControl *control, CrossApp::CCPoint point);
	void onResetBtnClick(CrossApp::CAControl *control, CrossApp::CCPoint point);

	void brightSliderValueChange(CAControl* btn, CCPoint point);
	void contrastSliderValueChange(CAControl* btn, CCPoint point);
	void saturationSliderValueChange(CAControl* btn, CCPoint point);
	void hueValueChange(CAControl* btn, CCPoint point);
	void cbrValueChange(CAControl* btn, CCPoint point);
	void cbgValueChange(CAControl* btn, CCPoint point);
	void cbbValueChange(CAControl* btn, CCPoint point);
protected:

	void viewDidLoad();

	void viewDidUnload();

	void changeMainImage(int tag);

	void changeImage();
private:
	CAScrollView *scrollView; // 滚动条
	CAImageView *imageView; // 显示的图片
	CAImage* baseImage; // 原图
	CAView *selectImageNode; // 选择图片节点

	CAView *brightNode; // 亮度节点
	CALabel *brightValueLabel; // 亮度值
	CASlider *brightSlider; // 亮度滑动条

	CAView *contrastNode; // 对比度节点
	CALabel *contrastValueLabel; // 对比度值
	CASlider *contrastSlider; // 对比度滑动条

	CAView *saturationNode; // 饱和度节点
	CALabel *saturationValueLabel; // 饱和度值
	CASlider *saturationSlider; // 饱和度滑动条

	CAView *hueNode; // 色相节点
	CALabel *hueValueLabel; // 色相值
	CASlider *hueSlider; // 色相滑动条

	CAView *cbrNode; // 色相节点
	CALabel *cbrValueLabel; // 色相值
	CASlider *cbrSlider; // 色相滑动条

	CAView *cbgNode; // 色相节点
	CALabel *cbgValueLabel; // 色相值
	CASlider *cbgSlider; // 色相滑动条

	CAView *cbbNode; // 色相节点
	CALabel *cbbValueLabel; // 色相值
	CASlider *cbbSlider; // 色相滑动条


	CAView *commitNode; // 提交节点


	CAView *btmNode; // 底部节点

	int imageCount; // 元素图片数量
private:
	float bright; // 亮度值[-1, 1]
	float contrast; // 对比度[-1, 1]
	float saturation; // 饱和度[-1,1]
	int hue; // 色相[0,359]
	int cbr; // 色彩平衡 R
	int cbg; // 色彩平衡 G
	int cbb; // 色彩平衡 B


};
#endif /* defined(__HelloCpp__ViewController__) */